/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
 * You can obtain one at http://mozilla.org/MPL/2.0/. */

'use strict'

function throttle (fn, limit) {
  let waitingTime = false
  return () => {
    if (!waitingTime) {
      fn.call()
      waitingTime = true
      setTimeout(() => {
        waitingTime = false
      }, limit)
    }
  }
}

module.exports = throttle
